package cn.explink.dop.service;

import java.util.List;
import java.util.Map;

import org.springframework.transaction.annotation.Transactional;

import cn.explink.dop.dto.ReturnSettleDTO;
import cn.explink.dop.entity.vo.ReturnVO;
import cn.explink.eap.core.common.service.CommonService;

/*
 * @author  wangzy
 */

@Transactional
public interface ReturnService extends CommonService {

	// 核销归班单
	public int updateReturnStatus(String billno);

	// 按照归班单号查询归班单
	public Map<String, Object> queryReturnByBillNo(String billno);

	// 删除归班单
	public void deleteReturn(String billno);

	// 删除订单
	public int deleteOrder(String returnid);

	// 查询归班单——派费结算页面，有汇总
	public Map<String, Object> queryReturn(ReturnVO returnVO, int pageNum, int pageSize);

	// 查询归班单——归班结算页面，无汇总
	Map<String, Object> queryReturnForSettle(ReturnVO returnVO, int pageNum, int pageSize);

	/**
	 *
	 * @Title: getReturnSettle
	 * @Description: 分页获取归班反馈信息
	 * @author 孟凡岭
	 * @param @param returnSettleDTO
	 * @param @param pageNum
	 * @param @param pageSize
	 * @param @return
	 * @return Map<String, Object> 返回类型
	 * @throws
	 */
	public Map<String, Object> getReturnSettle(ReturnSettleDTO returnSettleDTO, int pageNum, int pageSize);

	/**
	 *
	 * @Title: upMoney
	 * @Description: 配送员交款
	 * @author 孟凡岭
	 * @param @param deliveryIds
	 * @param @param returnDate
	 * @return void 返回类型
	 * @throws
	 */
	public void upMoney(List<String> deliveryIds, List<String> returnDates) throws Exception;

	/**
	 *
	 * @Title: settleMoney
	 * @Description: 结算派费
	 * @author 孟凡岭
	 * @param @param deliveryIds
	 * @param @param completeTimes
	 * @return void 返回类型
	 * @throws
	 */
	public void settleMoney(List<String> deliveryIds, List<String> completeTimes) throws Exception;
}
